package com.unicom.office.dataitem;

import com.unicom.office.var.ObjectVarItem;
import com.unicom.office.var.VarItem;

import java.util.Map;

public class ObjectDataItem extends DataItem {
    public ObjectDataItem(Object value, ObjectVarItem config) {
        super(value, config);
    }

    public ObjectVarItem getConfig(){
        return (ObjectVarItem)config;
    }

    public Map<String, Object> getValue(){
        return (Map<String, Object>)value;
    }

    public DataItem getProp(String key){
        return getPropConfig(key).createDataItem(getValue().get(key));
    }

    public void setProp(String key, Object value){
        getValue().put(key, getPropConfig(key).getFormatedValue(value));
    }

    public VarItem getPropConfig(String key){
        return getConfig().getObjType().getProp(key);
    }
}
